package com.gcsoftware.gateway;

import com.gcsoftware.gateway.trafficProcess.gatewayEntry;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
 * Hello world!
 *
 */
public class DSGateway
{
    private static final Logger log = LoggerFactory.getLogger(DSGateway.class);
    public static void startGateway()
    {
        gatewayEntry gateway = new gatewayEntry();
        welcome();
        gateway.start();
    }

    private static void welcome()
    {
        System.out.println(" ██████╗  █████╗ ███████╗███████╗                                                              ");
        System.out.println("██╔════╝ ██╔══██╗██╔════╝██╔════╝                                                              ");
        System.out.println("██║  ███╗███████║█████╗  █████╗                                                                ");
        System.out.println("██║   ██║██╔══██║██╔══╝  ██╔══╝                                                                ");
        System.out.println("╚██████╔╝██║  ██║██║     ██║                                                                   ");
        System.out.println(" ╚═════╝ ╚═╝  ╚═╝╚═╝     ╚═╝                                                                   ");
        System.out.println("                                                                                               ");
        System.out.println("██████╗  █████╗ ████████╗ █████╗ ███████╗███████╗ ██████╗██╗   ██╗██████╗ ██╗████████╗██╗   ██╗");
        System.out.println("██╔══██╗██╔══██╗╚══██╔══╝██╔══██╗██╔════╝██╔════╝██╔════╝██║   ██║██╔══██╗██║╚══██╔══╝╚██╗ ██╔╝");
        System.out.println("██║  ██║███████║   ██║   ███████║███████╗█████╗  ██║     ██║   ██║██████╔╝██║   ██║    ╚████╔╝ ");
        System.out.println("██║  ██║██╔══██║   ██║   ██╔══██║╚════██║██╔══╝  ██║     ██║   ██║██╔══██╗██║   ██║     ╚██╔╝  ");
        System.out.println("██████╔╝██║  ██║   ██║   ██║  ██║███████║███████╗╚██████╗╚██████╔╝██║  ██║██║   ██║      ██║   ");
        System.out.println("╚═════╝ ╚═╝  ╚═╝   ╚═╝   ╚═╝  ╚═╝╚══════╝╚══════╝ ╚═════╝ ╚═════╝ ╚═╝  ╚═╝╚═╝   ╚═╝      ╚═╝   ");
        System.out.println("                                                                                               ");
        System.out.println(" ██████╗  █████╗ ████████╗███████╗██╗    ██╗ █████╗ ██╗   ██╗                                  ");
        System.out.println("██╔════╝ ██╔══██╗╚══██╔══╝██╔════╝██║    ██║██╔══██╗╚██╗ ██╔╝                                  ");
        System.out.println("██║  ███╗███████║   ██║   █████╗  ██║ █╗ ██║███████║ ╚████╔╝                                   ");
        System.out.println("██║   ██║██╔══██║   ██║   ██╔══╝  ██║███╗██║██╔══██║  ╚██╔╝                                    ");
        System.out.println("╚██████╔╝██║  ██║   ██║   ███████╗╚███╔███╔╝██║  ██║   ██║                                     ");
        System.out.println(" ╚═════╝ ╚═╝  ╚═╝   ╚═╝   ╚══════╝ ╚══╝╚══╝ ╚═╝  ╚═╝   ╚═╝                                     ");
    }
    private static void log_welcome()
    {
        log.info(" ██████╗  █████╗ ███████╗███████╗                                                              ");
        log.info("██╔════╝ ██╔══██╗██╔════╝██╔════╝                                                              ");
        log.info("██║  ███╗███████║█████╗  █████╗                                                                ");
        log.info("██║   ██║██╔══██║██╔══╝  ██╔══╝                                                                ");
        log.info("╚██████╔╝██║  ██║██║     ██║                                                                   ");
        log.info(" ╚═════╝ ╚═╝  ╚═╝╚═╝     ╚═╝                                                                   ");
        log.info("                                                                                               ");
        log.info("██████╗  █████╗ ████████╗ █████╗ ███████╗███████╗ ██████╗██╗   ██╗██████╗ ██╗████████╗██╗   ██╗");
        log.info("██╔══██╗██╔══██╗╚══██╔══╝██╔══██╗██╔════╝██╔════╝██╔════╝██║   ██║██╔══██╗██║╚══██╔══╝╚██╗ ██╔╝");
        log.info("██║  ██║███████║   ██║   ███████║███████╗█████╗  ██║     ██║   ██║██████╔╝██║   ██║    ╚████╔╝ ");
        log.info("██║  ██║██╔══██║   ██║   ██╔══██║╚════██║██╔══╝  ██║     ██║   ██║██╔══██╗██║   ██║     ╚██╔╝  ");
        log.info("██████╔╝██║  ██║   ██║   ██║  ██║███████║███████╗╚██████╗╚██████╔╝██║  ██║██║   ██║      ██║   ");
        log.info("╚═════╝ ╚═╝  ╚═╝   ╚═╝   ╚═╝  ╚═╝╚══════╝╚══════╝ ╚═════╝ ╚═════╝ ╚═╝  ╚═╝╚═╝   ╚═╝      ╚═╝   ");
        log.info("                                                                                               ");
        log.info(" ██████╗  █████╗ ████████╗███████╗██╗    ██╗ █████╗ ██╗   ██╗                                  ");
        log.info("██╔════╝ ██╔══██╗╚══██╔══╝██╔════╝██║    ██║██╔══██╗╚██╗ ██╔╝                                  ");
        log.info("██║  ███╗███████║   ██║   █████╗  ██║ █╗ ██║███████║ ╚████╔╝                                   ");
        log.info("██║   ██║██╔══██║   ██║   ██╔══╝  ██║███╗██║██╔══██║  ╚██╔╝                                    ");
        log.info("╚██████╔╝██║  ██║   ██║   ███████╗╚███╔███╔╝██║  ██║   ██║                                     ");
        log.info(" ╚═════╝ ╚═╝  ╚═╝   ╚═╝   ╚══════╝ ╚══╝╚══╝ ╚═╝  ╚═╝   ╚═╝                                     ");

    }
   public static void main( String[] args )
    {
        startGateway();
    }
}
